import { ref } from "vue"
import pageModal from "@/components/page-modal";

type CallbackFn = (item?: any) => void

export function usePageModal(newCallBackFu?: CallbackFn, EditorCallBack?: CallbackFn) {
  const modalInfo = ref<any>({});
  const pageModalRef = ref<InstanceType<typeof pageModal>>();
  const handleNewData = () => {
    modalInfo.value = {};
    if (pageModalRef.value) {
      pageModalRef.value.dialogVisible = true;
    }
    newCallBackFu && newCallBackFu()
  };
  // 编辑
  const handleEditorRow = (row: any) => {
    if (pageModalRef.value) {
      modalInfo.value = { ...row };
      pageModalRef.value.dialogVisible = true;
    }
    EditorCallBack && EditorCallBack(row)
  };

  return {
    modalInfo, pageModalRef, handleNewData, handleEditorRow
  }
}